<template>
  <!-- 医院端企业证照 -->
  <div class="biz-container">
    <table-layout :haveSider="false">
      <template #searchBox>
        <search-layout
          :formInfos="q_formInfos"
          :formDatas="q_formDatas"
          message=""
          @onChangeType="onChangeType"
          @onFind="onFind"
        ></search-layout>
      </template>
      <template #batchOperat>
        <batch-operat-btn 
          :addData="false" @onAddData="onAddData" 
          :optData="optText" @onOptData="onBatchAudit"
        >
          <template #cusBtn> </template>
        </batch-operat-btn>
      </template>
      <template #tableList="slotData" > 
        <a-list-table
          :columns="columns"
          :tableData="listdata"
          :pagination="pagination"
          :isSelecttion="true"
          :loading="loading"
          :scroll="{y:slotData.tableHeight}"
          @onTableChange="handleTableChange"
          @onselectChange="onselectChange"
          @onTouchCell="onTouchCell"
          @onAction="onAction"
        >
        </a-list-table>
      </template>
    </table-layout>
    <auditModal ref="auditModal" @ok="handleModalSaveOk" @close="handleModalCancel" />
    <licenseImgModal ref="imgModal" :editable="false" />
  </div>
</template>

<script>
import searchLayout from '@/views/app/biz/common/searchLayout'
import batchOperatBtn from '@/views/app/biz/common/batchOperatBtn'
import tableLayout from '@/views/app/biz/common/index'
import aListInfo from '@/views/app/biz/common/aListInfo'
import aListTable from '@/views/app/biz/common/aListTable'
import licenseImgModal from '../licenseImg/licenseImgModal'
import auditModal from './auditModal'
import { getByConditions, getByConditionsCount, auditLicense } from './companyLicense'
import form from '@/locales/lang/zh-CN/form'

// 字段列表
const columns = [
  { title: '供应商代码', dataIndex: 'suoShupdm', key: 'dengJidwdm', align: 'center' },
  { title: '供应商名称', dataIndex: 'suoShupmc', key: 'dengJidwmc', align: 'center' },
  { title: '证照类型', dataIndex: 'zhengZhaolx', key: 'zhengZhaolx', align: 'center' },
  { title: '证照号', dataIndex: 'zhengZhaohm', key: 'zhengZhaohm', align: 'center' },
  { title: '颁发机构', dataIndex: 'banFajg', key: 'banFajg', align: 'center' },
  { title: '有效期止', dataIndex: 'youXiaoqz', key: 'youXiaoqz', align: 'center' },
  {
    title: '状态',
    dataIndex: 'zhuangTai',
    width: 60,
    key: 'zhuangTai',
    align: 'center',
    scopedSlots: { customRender: 'zhuCezZhuangtstai_ZZ' }
  },
  {
    title: '操作',
    dataIndex: 'action',
    width: 170,
    key: 'operation',
    align: 'center',
    scopedSlots: { customRender: 'action' }
  }
]

export default {
  name:'supplierLicensePassed',
  components: {
    searchLayout,
    batchOperatBtn,
    tableLayout,
    aListInfo,
    aListTable,
    auditModal,
    licenseImgModal
  },
  data() {
    return {
      columns: columns,
      listdata: [],
      loading: false,
      pagination: {
        //分页配置
        current: 1, //当前页码 current
        pageSize: 10, //每页显示条数 pageSize
        total: 1,
        showQuickJumper: true,
        showSizeChanger: true, 
        pageSizeOptions: ['2', '10', '50', '100']
      },
      // 查询表单
      q_formInfos: [
        { label: '供应商', name: 'suoShuqyOrgPid', type: 'supplier', placeholder: '供应商' },
        { label: '证照类型', name: 'zhengZhaolx', type: 'dicselect', dicName: 'zhengZhaolx', placeholder: '证类型' },
        { label: '证照号', name: 'zhengZhaohm', type: 'input', placeholder: '证号' },
        { label: '证照状态', name: 'zhuangTai', type: 'dicselect', dicName: 'zhuCezzt', placeholder: '证照状态' },
        { label: ['查询', '重置'], type: 'botton' }
      ],
      // 查询表单绑定数据
      q_formDatas: {
        zhuangTai: null,
        zhengZhaohm: null,
        zhengZhaolx: null,
        shengChancsmc: null,
        suoShuqyOrgPid: null
      },
      pData: {}, // 条件查询参数
      optText: '批量审核',
      selectedRowKeys: [],
      selectedRows: [],
      notAudit: false
    }
  },
  computed: {},
  // watch: {
  //   //监听路由，只要路由有变化(路径，参数等变化)都有执行下面的函数，你可以
  //   $route: {
  //     handler: function(val, oldVal) {
  //       //created事件触发的函数可以在这里写...
  //       // this.q_formDatas.zhuangTai=this.$route.meta.zhuangTai
  //       this.q_formDatas.suoShupmc = this.$route.params.suoShupmc
  //       this.getTotal()
  //       this.getList(this.q_formDatas)
  //     },
  //     deep: true,
  //     immediate: true
  //   }
  // },
  
  //通过activated钩子触发请求函数
  activated() {
      console.log('activated');
  },
  //返回详情页面时 隐藏内容div区块 再进入详情时 显示内容div区块 
  deactivated() {
      console.log('deactivated');
  },
  mounted(){
    console.log('mounted');
    this.getTotal()
    this.getList(this.q_formDatas)
  },
  methods: {
    // 初始化页面时得到总数
    async getTotal() {
      let pages = ''
      pages = await getByConditionsCount(this.q_formDatas)
      console.log(pages)
      if (pages && pages.code && pages.code === 'C1') {
        const pagination = { ...this.pagination }
        pagination.total = pages.data
        this.pagination = pagination
        this.pagination.showTotal = showTotal => {
          return `共 ${showTotal} 条`
        }
      }
    },
    // 初始化查询时的数据列表
    async getList(params) {
      console.log('请求列表时传入的数据', params)
      let actionBtn = ['证照图片']
      this.loading = true
      this.listdata = []
      console.log(this.selectedRows);
      let res = ''
      res = await getByConditions(params, this.pagination)
      this.loading = false
      console.log(res)
      if (res && res.code && res.code === 'C1' && res.data) {
        const resdata = res.data
        for (let item of resdata) {
          switch (item.zhuangTai) {
            case '待审核':
              actionBtn = ['审核', '证照图片']
              break
            default:
              actionBtn = ['证照图片']
          }
          this.listdata.push({
            key: item.pid,
            action: actionBtn,
            ...item
          })
        }
      } else {
        this.listdata = []
      }
      console.log(this.listdata)
    },
    // 新增按钮 点击了新增
    onAddData() {
      this.$refs.modal.addModal()
    },
    // 关闭模态详细框
    handleModalCancel() {},
    // 模态详细框提交按钮
    handleModalSaveOk() {
      this.getList(this.q_formDatas)
    },
    // 标题点击
    onTouchCell(text, record, index) {
      console.log(text)
      console.log(record)
      console.log(index)
      if (index == 'chanPinmc') {
        this.$refs.modal.editModal(record.pid)
      } else if (index == 'shengChancszzzt') {
        this.$refs.imgModal.showModal(record.zhengZhaotpPid)
      }
    },
    handlePushModalClosed() {
      //
    },
    // 操作按钮
    onAction(text, record) {
      if (text == '审核') {
        this.$refs.auditModal.editModal(record.pid, record.zhengZhaotpPid)
      } else if (text == '证照图片') {
        this.$refs.imgModal.showModal(record.zhengZhaotpPid)
      }
    },
    // 触发改变页码,筛选,排序时的回调
    handleTableChange(pagination, filters, sorter) {
      this.pagination.current = pagination.current
      this.pagination.pageSize = pagination.pageSize
      this.getList(this.q_formDatas)
    },
    // 查询按钮
    onFind() {
      this.pagination.current = 1
      this.getList(this.q_formDatas)
      this.getTotal()
    },
    // 查询条件改变时
    onChangeType(name, val) {
      this.pagination.current = 1
      this.getTotal()
      this.getList(this.q_formDatas)
    },
    // 多选批量操作
    onselectChange(selectedRowKeys, selectedRows) {
      this.selectedRowKeys = selectedRowKeys
      this.selectedRows = selectedRows
      for (const item of this.selectedRows) {
        if (item.zhuangTai != '待审核') {
          this.notAudit = true
          return
        } else {
          this.notAudit = false
        }
      }
    },
    onBatchAudit() {
      if (this.selectedRows.length) {
        if (this.notAudit) {
          this.$message.warning({ content: '已选项中含有已审核的记录，请选择待审核的记录', duration: 3 })
        } else {
          this.$refs.auditModal.batchModal(this.selectedRows)
        }
      } else {
        this.$message.warning({ content: '未选择要审核的记录', duration: 3 })
      }
    }
  }
}
</script>
